```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>深入解析Tomcat Coyote | Web服务器核心组件</title>
    <link href="https://cdn.staticfile.org/font-awesome/6.4.0/css/all.min.css" rel="stylesheet">
    <link href="https://cdn.staticfile.org/tailwindcss/2.2.19/tailwind.min.css" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;700&display=swap" rel="stylesheet">
    <script src="https://cdn.jsdelivr.net/npm/mermaid@latest/dist/mermaid.min.js"></script>
    <style>
        body {
            font-family: 'Noto Sans SC', Tahoma, Arial, Roboto, "Droid Sans", "Helvetica Neue", "Droid Sans Fallback", "Heiti SC", "Hiragino Sans GB", Simsun, sans-serif;
            background-color: #f8fafc;
            color: #1e293b;
            line-height: 1.6;
        }
        .hero-gradient {
            background: linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);
        }
        .card-hover {
            transition: all 0.3s ease;
        }
        .card-hover:hover {
            transform: translateY(-5px);
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
        }
        .highlight {
            position: relative;
            z-index: 1;
        }
        .highlight::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 30%;
            background-color: rgba(59, 130, 246, 0.2);
            z-index: -1;
            transform: scaleX(1.02);
            transition: all 0.3s ease;
        }
        .highlight:hover::after {
            height: 40%;
            background-color: rgba(59, 130, 246, 0.3);
        }
        .drop-cap::first-letter {
            float: left;
            font-size: 4.5rem;
            line-height: 0.85;
            margin: 0.15em 0.1em 0 0;
            color: #3b82f6;
            font-weight: 700;
        }
    </style>
</head>
<body class="antialiased">
    <!-- Hero Section -->
    <section class="hero-gradient text-white py-24 px-4 sm:px-6 lg:px-8">
        <div class="max-w-5xl mx-auto text-center">
            <h1 class="text-4xl md:text-5xl lg:text-6xl font-bold mb-6 font-serif">Tomcat Coyote</h1>
            <p class="text-xl md:text-2xl max-w-3xl mx-auto leading-relaxed">
                Apache Tomcat 的核心连接器，构建 Web 服务器与 Java 应用之间的高效桥梁
            </p>
            <div class="mt-10 flex justify-center space-x-4">
                <a href="#what-is" class="px-6 py-3 bg-white text-blue-600 font-medium rounded-lg shadow-md hover:bg-blue-50 transition duration-300">
                    <i class="fas fa-book mr-2"></i>核心概念
                </a>
                <a href="#workflow" class="px-6 py-3 bg-blue-800 text-white font-medium rounded-lg shadow-md hover:bg-blue-900 transition duration-300">
                    <i class="fas fa-project-diagram mr-2"></i>工作流程
                </a>
            </div>
        </div>
    </section>

    <!-- Main Content -->
    <main class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 py-16">
        <!-- What is Coyote Section -->
        <section id="what-is" class="mb-20">
            <div class="flex items-center mb-10">
                <div class="h-1 bg-gradient-to-r from-blue-500 to-indigo-500 w-16 rounded-full"></div>
                <h2 class="ml-4 text-3xl font-bold text-gray-800 font-serif">Tomcat Coyote 是什么？</h2>
            </div>
            
            <div class="drop-cap bg-white rounded-xl shadow-lg p-8 mb-10">
                <p class="text-lg leading-relaxed">
                    <span class="font-semibold text-blue-600">Tomcat Coyote</span> 是 Apache Tomcat 中的一个核心组件，它负责处理 HTTP 请求和响应。Coyote 作为 Tomcat 的连接器，充当了 Web 服务器和客户端之间的桥梁，将网络请求转换为适合 Tomcat 引擎处理的 Java 对象。
                </p>
            </div>

            <div class="grid md:grid-cols-2 gap-8 mb-12">
                <div class="bg-white rounded-xl shadow-lg overflow-hidden card-hover">
                    <img src="https://cdn.nlark.com/yuque/0/2024/png/21449790/1723173398870-9b882c93-9b92-450f-9a87-8e020e607689.png" alt="Tomcat Coyote 架构图" class="w-full h-48 object-cover">
                    <div class="p-6">
                        <h3 class="text-xl font-bold mb-3 text-gray-800">连接器的角色</h3>
                        <p class="text-gray-600">
                            在 Tomcat 中，连接器的作用是接收客户端的请求，并将其传递给 Tomcat 的 Servlet 容器进行处理。Coyote 是 Tomcat 默认的连接器，支持多种协议（如 HTTP/1.1 和 AJP）。
                        </p>
                    </div>
                </div>
                <div class="bg-white rounded-xl shadow-lg overflow-hidden card-hover">
                    <img src="https://cdn.nlark.com/yuque/0/2024/png/21449790/1723173520791-3db1c029-10d4-43d6-ac96-fb459acb6314.png" alt="Coyote 协议支持" class="w-full h-48 object-cover">
                    <div class="p-6">
                        <h3 class="text-xl font-bold mb-3 text-gray-800">支持的协议</h3>
                        <ul class="space-y-2 text-gray-600">
                            <li><i class="fas fa-check-circle text-blue-500 mr-2"></i><span class="font-medium">HTTP/1.1</span>：支持常见的 HTTP 请求和响应模式</li>
                            <li><i class="fas fa-check-circle text-blue-500 mr-2"></i><span class="font-medium">AJP</span>：二进制协议，用于 Web 服务器与应用服务器通信</li>
                        </ul>
                    </div>
                </div>
            </div>

            <div class="bg-white rounded-xl shadow-lg p-8">
                <h3 class="text-2xl font-bold mb-6 text-gray-800 font-serif">Coyote 的架构组成</h3>
                <div class="grid md:grid-cols-2 lg:grid-cols-4 gap-6">
                    <div class="bg-blue-50 p-6 rounded-lg">
                        <div class="w-12 h-12 bg-blue-100 rounded-full flex items-center justify-center mb-4">
                            <i class="fas fa-plug text-blue-600 text-xl"></i>
                        </div>
                        <h4 class="font-bold text-lg mb-2 text-gray-800">Connector</h4>
                        <p class="text-gray-600 text-sm">负责网络层的通信，监听指定的端口，接受客户端请求</p>
                    </div>
                    <div class="bg-indigo-50 p-6 rounded-lg">
                        <div class="w-12 h-12 bg-indigo-100 rounded-full flex items-center justify-center mb-4">
                            <i class="fas fa-code text-indigo-600 text-xl"></i>
                        </div>
                        <h4 class="font-bold text-lg mb-2 text-gray-800">Protocol Handler</h4>
                        <p class="text-gray-600 text-sm">根据请求协议，选择合适的处理器来解析请求</p>
                    </div>
                    <div class="bg-purple-50 p-6 rounded-lg">
                        <div class="w-12 h-12 bg-purple-100 rounded-full flex items-center justify-center mb-4">
                            <i class="fas fa-cogs text-purple-600 text-xl"></i>
                        </div>
                        <h4 class="font-bold text-lg mb-2 text-gray-800">Processor</h4>
                        <p class="text-gray-600 text-sm">将请求转换为 Java 对象，传递给 Servlet 容器</p>
                    </div>
                    <div class="bg-pink-50 p-6 rounded-lg">
                        <div class="w-12 h-12 bg-pink-100 rounded-full flex items-center justify-center mb-4">
                            <i class="fas fa-exchange-alt text-pink-600 text-xl"></i>
                        </div>
                        <h4 class="font-bold text-lg mb-2 text-gray-800">Adapter</h4>
                        <p class="text-gray-600 text-sm">适配器模式用于将处理器与 Catalina 容器连接</p>
                    </div>
                </div>
            </div>
        </section>

        <!-- Workflow Section -->
        <section id="workflow" class="mb-20">
            <div class="flex items-center mb-10">
                <div class="h-1 bg-gradient-to-r from-blue-500 to-indigo-500 w-16 rounded-full"></div>
                <h2 class="ml-4 text-3xl font-bold text-gray-800 font-serif">Coyote 的工作流程</h2>
            </div>

            <div class="bg-white rounded-xl shadow-lg p-8 mb-10">
                <div class="mermaid">
                    graph TD
                        A[接收请求] --> B[解析请求]
                        B --> C[传递请求到Catalina]
                        C --> D[Servlet处理]
                        D --> E[生成响应]
                        E --> F[编码响应]
                        F --> G[返回客户端]
                </div>
            </div>

            <div class="grid md:grid-cols-2 gap-8">
                <div class="bg-white rounded-xl shadow-lg p-8 card-hover">
                    <h3 class="text-2xl font-bold mb-6 text-gray-800 font-serif">性能优化策略</h3>
                    <div class="space-y-6">
                        <div class="flex items-start">
                            <div class="flex-shrink-0 bg-blue-100 p-3 rounded-lg mr-4">
                                <i class="fas fa-bolt text-blue-600 text-xl"></i>
                            </div>
                            <div>
                                <h4 class="font-bold text-lg mb-1 text-gray-800">非阻塞 I/O</h4>
                                <p class="text-gray-600">通过 Selector 机制管理大量连接，减少线程切换和资源消耗</p>
                            </div>
                        </div>
                        <div class="flex items-start">
                            <div class="flex-shrink-0 bg-indigo-100 p-3 rounded-lg mr-4">
                                <i class="fas fa-users text-indigo-600 text-xl"></i>
                            </div>
                            <div>
                                <h4 class="font-bold text-lg mb-1 text-gray-800">线程池管理</h4>
                                <p class="text-gray-600">配置线程池大小和策略，提高资源利用率和响应速度</p>
                            </div>
                        </div>
                        <div class="flex items-start">
                            <div class="flex-shrink-0 bg-purple-100 p-3 rounded-lg mr-4">
                                <i class="fas fa-link text-purple-600 text-xl"></i>
                            </div>
                            <div>
                                <h4 class="font-bold text-lg mb-1 text-gray-800">连接复用</h4>
                                <p class="text-gray-600">通过 keep-alive 机制减少 TCP 连接建立和断开的开销</p>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="bg-white rounded-xl shadow-lg p-8 card-hover">
                    <h3 class="text-2xl font-bold mb-6 text-gray-800 font-serif">配置选项示例</h3>
                    <pre class="bg-gray-800 text-gray-100 rounded-lg p-4 overflow-x-auto text-sm">
                        <code class="language-xml">
&lt;Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
           connectionTimeout="20000"
           redirectPort="8443" 
           maxThreads="200"
           minSpareThreads="25"
           maxKeepAliveRequests="100"
           compression="on"
           compressionMinSize="2048"
           noCompressionUserAgents="gozilla, traviata"
           compressableMimeType="text/html,text/xml,text/plain,text/css,text/javascript,application/javascript,application/json"
           acceptCount="100"
           disableUploadTimeout="true"
           enableLookups="false"/&gt;
                        </code>
                    </pre>
                    <div class="mt-4 grid grid-cols-2 gap-2 text-sm">
                        <div class="bg-blue-50 px-3 py-2 rounded">
                            <span class="font-medium text-blue-600">maxThreads</span>：最大线程数
                        </div>
                        <div class="bg-indigo-50 px-3 py-2 rounded">
                            <span class="font-medium text-indigo-600">compression</span>：启用压缩
                        </div>
                        <div class="bg-purple-50 px-3 py-2 rounded">
                            <span class="font-medium text-purple-600">acceptCount</span>：排队请求数
                        </div>
                        <div class="bg-pink-50 px-3 py-2 rounded">
                            <span class="font-medium text-pink-600">enableLookups</span>：DNS查找
                        </div>
                    </div>
                </div>
            </div>
        </section>

        <!-- Advantages Section -->
        <section class="mb-20">
            <div class="flex items-center mb-10">
                <div class="h-1 bg-gradient-to-r from-blue-500 to-indigo-500 w-16 rounded-full"></div>
                <h2 class="ml-4 text-3xl font-bold text-gray-800 font-serif">Coyote 的优势与应用</h2>
            </div>

            <div class="grid md:grid-cols-3 gap-8">
                <div class="bg-white rounded-xl shadow-lg p-8 text-center card-hover">
                    <div class="w-16 h-16 bg-blue-100 rounded-full flex items-center justify-center mx-auto mb-6">
                        <i class="fas fa-tachometer-alt text-blue-600 text-2xl"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3 text-gray-800">高性能和可扩展性</h3>
                    <p class="text-gray-600">
                        Coyote 设计了多种性能优化机制，使其能够在高并发环境中高效处理请求。对于流量较大的 Web 应用尤为重要。
                    </p>
                </div>
                <div class="bg-white rounded-xl shadow-lg p-8 text-center card-hover">
                    <div class="w-16 h-16 bg-indigo-100 rounded-full flex items-center justify-center mx-auto mb-6">
                        <i class="fas fa-sliders-h text-indigo-600 text-2xl"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3 text-gray-800">灵活的配置</h3>
                    <p class="text-gray-600">
                        提供了丰富的配置选项，允许根据具体业务需求调整其行为。适应多种应用场景和部署环境。
                    </p>
                </div>
                <div class="bg-white rounded-xl shadow-lg p-8 text-center card-hover">
                    <div class="w-16 h-16 bg-purple-100 rounded-full flex items-center justify-center mx-auto mb-6">
                        <i class="fas fa-network-wired text-purple-600 text-2xl"></i>
                    </div>
                    <h3 class="text-xl font-bold mb-3 text-gray-800">广泛的协议支持</h3>
                    <p class="text-gray-600">
                        支持多种协议，包括 HTTP/1.1 和 AJP。能够与多种 Web 服务器和应用服务器集成。
                    </p>
                </div>
            </div>
        </section>
    </main>

    <script>
        mermaid.initialize({
            startOnLoad: true,
            theme: 'default',
            flowchart: {
                useMaxWidth: true,
                htmlLabels: true,
                curve: 'basis'
            }
        });
    </script>
</body>
</html>
```